package com.dragon.modules.yuegou.entity.wallet;

import com.baomidou.mybatisplus.annotation.TableName;
import com.dragon.modules.yuegou.enums.wallet.MemberCardRefundRefundCurrency;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 会员退卡实体类<br>
 * 对应的表为：walt_member_card_refund<br>
 * 
 * @author pbuilder generated
 * @date 2019-06-03 15:20:36
 * @company sgy
 * @version 2.0
 */
@TableName("walt_member_card_refund")
@ApiModel(description = "会员退卡")
public class MemberCardRefundEntity {

    /**  */
	protected String id;

    /** 退款单号（订单模块） */
	@ApiModelProperty("退款单号（订单模块）")
	protected String refundNo;

    /** 会员ID（冗余ID） */
	@ApiModelProperty("会员ID（冗余ID）")
	protected String memberId;

    /** 会员钱包ID（冗余ID） */
	@ApiModelProperty("会员钱包ID（冗余ID）")
	protected String memberWalletId;

    /** 悦卡模板ID */
	@ApiModelProperty("悦卡模板ID")
	protected String cardTemplateId;

    /** 会员悦卡ID */
	@ApiModelProperty("会员悦卡ID")
	protected String memberCardId;

    /** 退卡的悦卡金额 */
	@ApiModelProperty("退卡的悦卡金额")
	protected BigDecimal amount;

    /** 退还的金额 */
	@ApiModelProperty("退还的金额")
	protected BigDecimal refundFee;

    /** [枚举]退还的币种：4-微信虚拟币-WECHAT、5-支付宝虚拟币-ALIPAY */
	@ApiModelProperty("[枚举]退还的币种：4-微信虚拟币-WECHAT、5-支付宝虚拟币-ALIPAY")
	protected MemberCardRefundRefundCurrency refundCurrency;

    /** 退款时间 */
	@ApiModelProperty("退款时间")
	protected LocalDateTime createdTime;

    /** 微信交易单号（微信退款时存在） */
	@ApiModelProperty("微信交易单号（微信退款时存在）")
	protected String wechatTransactionId;

    /** 微信退款单号（微信退款时存在） */
	@ApiModelProperty("微信退款单号（微信退款时存在）")
	protected String wechatRefundId;

    /** 微信商户ID（微信退款时存在） */
	@ApiModelProperty("微信商户ID（微信退款时存在）")
	protected String wechatMchId;

    /** 微信子商户ID（微信退款时存在） */
	@ApiModelProperty("微信子商户ID（微信退款时存在）")
	protected String wechatSubMchId;

	/**
	 * 构造一个空会员退卡实体对象
	 */
	public MemberCardRefundEntity(){
		super();
	}

	/**
	 * 依据其它对象的信息构造一个会员退卡实体对象
	 * 
	 * @param other 其它对象
	 */
	public MemberCardRefundEntity(MemberCardRefundEntity other){
		super();
     	this.id = other.id;
     	this.refundNo = other.refundNo;
     	this.memberId = other.memberId;
     	this.memberWalletId = other.memberWalletId;
     	this.cardTemplateId = other.cardTemplateId;
     	this.memberCardId = other.memberCardId;
     	this.amount = other.amount;
     	this.refundFee = other.refundFee;
     	this.refundCurrency = other.refundCurrency;
     	this.createdTime = other.createdTime;
     	this.wechatTransactionId = other.wechatTransactionId;
     	this.wechatRefundId = other.wechatRefundId;
     	this.wechatMchId = other.wechatMchId;
     	this.wechatSubMchId = other.wechatSubMchId;
	}


	/**
	 * 获取
	 * 
	 * @return id 
	 */
	public String getId() {
		return id;
	}
  	
	/**
	 * 设置
	 * 
	 * @param id 
	 */
	public void setId(String id) {
		this.id = id;
	}

	/**
	 * 获取退款单号（订单模块）
	 * 
	 * @return refundNo 退款单号（订单模块）
	 */
	public String getRefundNo() {
		return refundNo;
	}
  	
	/**
	 * 设置退款单号（订单模块）
	 * 
	 * @param refundNo 退款单号（订单模块）
	 */
	public void setRefundNo(String refundNo) {
		this.refundNo = refundNo;
	}

	/**
	 * 获取会员ID（冗余ID）
	 * 
	 * @return memberId 会员ID（冗余ID）
	 */
	public String getMemberId() {
		return memberId;
	}
  	
	/**
	 * 设置会员ID（冗余ID）
	 * 
	 * @param memberId 会员ID（冗余ID）
	 */
	public void setMemberId(String memberId) {
		this.memberId = memberId;
	}

	/**
	 * 获取会员钱包ID（冗余ID）
	 * 
	 * @return memberWalletId 会员钱包ID（冗余ID）
	 */
	public String getMemberWalletId() {
		return memberWalletId;
	}
  	
	/**
	 * 设置会员钱包ID（冗余ID）
	 * 
	 * @param memberWalletId 会员钱包ID（冗余ID）
	 */
	public void setMemberWalletId(String memberWalletId) {
		this.memberWalletId = memberWalletId;
	}

	/**
	 * 获取悦卡模板ID
	 * 
	 * @return cardTemplateId 悦卡模板ID
	 */
	public String getCardTemplateId() {
		return cardTemplateId;
	}
  	
	/**
	 * 设置悦卡模板ID
	 * 
	 * @param cardTemplateId 悦卡模板ID
	 */
	public void setCardTemplateId(String cardTemplateId) {
		this.cardTemplateId = cardTemplateId;
	}

	/**
	 * 获取会员悦卡ID
	 * 
	 * @return memberCardId 会员悦卡ID
	 */
	public String getMemberCardId() {
		return memberCardId;
	}
  	
	/**
	 * 设置会员悦卡ID
	 * 
	 * @param memberCardId 会员悦卡ID
	 */
	public void setMemberCardId(String memberCardId) {
		this.memberCardId = memberCardId;
	}

	/**
	 * 获取退卡的悦卡金额
	 * 
	 * @return amount 退卡的悦卡金额
	 */
	public BigDecimal getAmount() {
		return amount;
	}
  	
	/**
	 * 设置退卡的悦卡金额
	 * 
	 * @param amount 退卡的悦卡金额
	 */
	public void setAmount(BigDecimal amount) {
		this.amount = amount;
	}

	/**
	 * 获取退还的金额
	 * 
	 * @return refundFee 退还的金额
	 */
	public BigDecimal getRefundFee() {
		return refundFee;
	}
  	
	/**
	 * 设置退还的金额
	 * 
	 * @param refundFee 退还的金额
	 */
	public void setRefundFee(BigDecimal refundFee) {
		this.refundFee = refundFee;
	}

	/**
	 * 获取[枚举]退还的币种：4-微信虚拟币-WECHAT、5-支付宝虚拟币-ALIPAY
	 * 
	 * @return refundCurrency [枚举]退还的币种：4-微信虚拟币-WECHAT、5-支付宝虚拟币-ALIPAY
	 */
	public MemberCardRefundRefundCurrency getRefundCurrency() {
		return refundCurrency;
	}
  	
	/**
	 * 设置[枚举]退还的币种：4-微信虚拟币-WECHAT、5-支付宝虚拟币-ALIPAY
	 * 
	 * @param refundCurrency [枚举]退还的币种：4-微信虚拟币-WECHAT、5-支付宝虚拟币-ALIPAY
	 */
	public void setRefundCurrency(MemberCardRefundRefundCurrency refundCurrency) {
		this.refundCurrency = refundCurrency;
	}

	/**
	 * 获取退款时间
	 * 
	 * @return createdTime 退款时间
	 */
	public LocalDateTime getCreatedTime() {
		return createdTime;
	}
  	
	/**
	 * 设置退款时间
	 * 
	 * @param createdTime 退款时间
	 */
	public void setCreatedTime(LocalDateTime createdTime) {
		this.createdTime = createdTime;
	}

	/**
	 * 获取微信交易单号（微信退款时存在）
	 * 
	 * @return wechatTransactionId 微信交易单号（微信退款时存在）
	 */
	public String getWechatTransactionId() {
		return wechatTransactionId;
	}
  	
	/**
	 * 设置微信交易单号（微信退款时存在）
	 * 
	 * @param wechatTransactionId 微信交易单号（微信退款时存在）
	 */
	public void setWechatTransactionId(String wechatTransactionId) {
		this.wechatTransactionId = wechatTransactionId;
	}

	/**
	 * 获取微信退款单号（微信退款时存在）
	 * 
	 * @return wechatRefundId 微信退款单号（微信退款时存在）
	 */
	public String getWechatRefundId() {
		return wechatRefundId;
	}
  	
	/**
	 * 设置微信退款单号（微信退款时存在）
	 * 
	 * @param wechatRefundId 微信退款单号（微信退款时存在）
	 */
	public void setWechatRefundId(String wechatRefundId) {
		this.wechatRefundId = wechatRefundId;
	}

	/**
	 * 获取微信商户ID（微信退款时存在）
	 * 
	 * @return wechatMchId 微信商户ID（微信退款时存在）
	 */
	public String getWechatMchId() {
		return wechatMchId;
	}
  	
	/**
	 * 设置微信商户ID（微信退款时存在）
	 * 
	 * @param wechatMchId 微信商户ID（微信退款时存在）
	 */
	public void setWechatMchId(String wechatMchId) {
		this.wechatMchId = wechatMchId;
	}

	/**
	 * 获取微信子商户ID（微信退款时存在）
	 * 
	 * @return wechatSubMchId 微信子商户ID（微信退款时存在）
	 */
	public String getWechatSubMchId() {
		return wechatSubMchId;
	}
  	
	/**
	 * 设置微信子商户ID（微信退款时存在）
	 * 
	 * @param wechatSubMchId 微信子商户ID（微信退款时存在）
	 */
	public void setWechatSubMchId(String wechatSubMchId) {
		this.wechatSubMchId = wechatSubMchId;
	}

    public String toString() {
		return new StringBuilder().append("MemberCardRefundEntity{").
			append("id=").append(id).
			append(",refundNo=").append(refundNo).
			append(",memberId=").append(memberId).
			append(",memberWalletId=").append(memberWalletId).
			append(",cardTemplateId=").append(cardTemplateId).
			append(",memberCardId=").append(memberCardId).
			append(",amount=").append(amount).
			append(",refundFee=").append(refundFee).
			append(",refundCurrency=").append(refundCurrency).
			append(",createdTime=").append(createdTime).
			append(",wechatTransactionId=").append(wechatTransactionId).
			append(",wechatRefundId=").append(wechatRefundId).
			append(",wechatMchId=").append(wechatMchId).
			append(",wechatSubMchId=").append(wechatSubMchId).
			append('}').toString();
    }

	/**
	 * 复制对象
	 * 
	 * @return 复制后的新实体对象
	 */
	public MemberCardRefundEntity copy() {
		return new MemberCardRefundEntity(this);
	}

    /**  */
	public static final String COL_ID = "id";

    /** 退款单号（订单模块） */
	public static final String COL_REFUND_NO = "refund_no";

    /** 会员ID（冗余ID） */
	public static final String COL_MEMBER_ID = "member_id";

    /** 会员钱包ID（冗余ID） */
	public static final String COL_MEMBER_WALLET_ID = "member_wallet_id";

    /** 悦卡模板ID */
	public static final String COL_CARD_TEMPLATE_ID = "card_template_id";

    /** 会员悦卡ID */
	public static final String COL_MEMBER_CARD_ID = "member_card_id";

    /** 退卡的悦卡金额 */
	public static final String COL_AMOUNT = "amount";

    /** 退还的金额 */
	public static final String COL_REFUND_FEE = "refund_fee";

    /** [枚举]退还的币种：4-微信虚拟币-WECHAT、5-支付宝虚拟币-ALIPAY */
	public static final String COL_REFUND_CURRENCY = "refund_currency";

    /** 退款时间 */
	public static final String COL_CREATED_TIME = "created_time";

    /** 微信交易单号（微信退款时存在） */
	public static final String COL_WECHAT_TRANSACTION_ID = "wechat_transaction_id";

    /** 微信退款单号（微信退款时存在） */
	public static final String COL_WECHAT_REFUND_ID = "wechat_refund_id";

    /** 微信商户ID（微信退款时存在） */
	public static final String COL_WECHAT_MCH_ID = "wechat_mch_id";

    /** 微信子商户ID（微信退款时存在） */
	public static final String COL_WECHAT_SUB_MCH_ID = "wechat_sub_mch_id";
}
